home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1995 November / EnigmA AMIGA RUN 02 (1995)(G.R. Edizioni)(IT)[!][issue 1995-11][Skylink CD].iso / earcd / misc / noahsarc.lha / Noahs.Arc / Part7 < prev    next >
Text File  |  1995-10-05  |  23KB  |  488 lines

  1.   
  2.   Let's stop for a minute and make ourselves a little checklist just to see
  3. where we are in our personal computer evolution:
  4.  
  5.   - First we gawked at the screen and wondered if we'd ever figure out ANY
  6.     of this stuff!  If you didn't then you're not a True Beginner and you
  7.     can't join the club.
  8.  
  9.   - We settled down, read (?) the manual (??), and started double-clicking
  10.     everything in sight.
  11.  
  12.   - We got better at moving files around with the mouse, and at one point
  13.     swore we'd never touch the keyboard again unless we had to.
  14.  
  15.   - We actually DID something in one of our games, like actually made it to
  16.     the next screen or something, so we're feeling VERY good.
  17.  
  18.   - We finally bought the modem and a terminal program, brought 'em home, set
  19.     'em up, read the manual and were crushed when we realized it was full of
  20.     that CLI garbage!
  21.  
  22.   - We close the term prog manual and pull out the DOS books we'd been
  23.     avoiding.  Once we get the gist with the pathnames and such we actually
  24.     start getting a little excited about using "semi-authentic computer
  25.     language", as referred to "icon-shuffling".  We open the manual back up
  26.     and breathe a sigh of relief..we can read it!
  27.  
  28.   - We make our first call to a BBS, thus taking our first tiny, hesitant
  29.     step into the New Age.
  30.  
  31.   - We download oodles of files.  We save them faithfully on our neat,
  32.     organized archive disks just like that nice Mr. BenchMaster said to do.
  33.  
  34.   - We become proficient at setting up and using our CustomBenches.  We've
  35.     incorporated the basic gang, Conman, Select, Mackie, PrefCh and FaccII
  36.     into the Amiga scheme of things.  We're movin' now.
  37.  
  38.   - Our fingers finally learned how to type and at one point we swore we'd
  39.     never use the mouse again unless we had to.
  40.  
  41.   - We finally recaptured the Talisman in FaeryTale, FINALLY kicked the bad-
  42.     ass Black Knight off his throne in Dark Castle (and WHAT was our reward?)
  43.     bought some snazzy software like Dpaint, faithfully read the manual and
  44.     did every tutorial and let's face it:  We're feelin' pretty good about
  45.     the whole thing, aren't we?
  46.  
  47.                                     *
  48.  
  49.   I certainly was.  Especially about that megabyte of Ram.  Wow, sure was
  50. nice havin' that big ol' megger of Ram around, yes indeedy!
  51.  
  52.   Just about the only thing I didn't know was what I was supposed to DO with
  53. it.
  54.  
  55.                                     *
  56.  
  57.   I quickly found out.
  58.  
  59.  
  60.   Df1 died.
  61.  
  62.                                     *
  63.   
  64.   It was a lovely service.  We all said a few words, and I put an old copy
  65. of Starglider in its little slot, just before they closed the tiny casket.
  66.  
  67.                                     *
  68.  
  69.   The guy at the shop said the heads had come unaligned and it was history.
  70. One drive??  Yuck!  Requester City!!  I was broke and couldn't buy a new one
  71. just yet.  What to do??  The answer was to load a bunch of the stuff I nor-
  72. mally needed off the Bench into Ram, basically move the Bench to Ram, and
  73. then "CD Ram".  That way I could use df0 like df1, as the "remote" drive, and
  74. control it from Ram, instead of from df0.
  75.  
  76.   This is something you HAVE to try.
  77.  
  78.   Put a copy of BareBench in df1, pull down the Rename menu and rename it to
  79. RamBench.  That's the disk we'll use for this next section, so boot it up.
  80.  
  81.                                        *
  82.  
  83.   Everything in the s, devs and libs directories and about half the c direc-
  84. tory should just about do it, together with any special-purpose tools
  85. you might need.  If you've got the meg then you've got plenty of room to 
  86. spare, so start the st-seq off with the following.  On our regular Bench
  87. we'll make this one of our Select files in the s dir:
  88.  
  89.       SetPatch >nil:             ;always this first
  90.       AddBuffers/FaccII: 100     ;definitely this next
  91.  
  92.       MakeDir Ram:c              ;makes c directory in Ram.
  93.       MakeDir Ram:devs           ;makes devs dir in Ram
  94.       MakeDir Ram:libs           ;makes libs dir in Ram
  95.       MakeDir Ram:s              ;makes s dir in Ram
  96.  
  97.       Copy c/Assign Ram:c        ;copies misc c commands to Ram:c, add any
  98.       Copy c/CD Ram:c             others you want
  99.       Copy c/Copy Ram:c
  100.       Copy c/Delete Ram:c
  101.       Copy c/Dir Ram:c
  102.       Copy c/e Ram:c
  103.       Copy c/EndCLI
  104.       Copy c/Echo Ram:c
  105.       Copy c/Ed Ram:c
  106.       Copy c/Execute Ram:c
  107.       Copy c/f Ram:c
  108.       Copy c/MakeDir Ram:c
  109.       Copy c/Path Ram:c
  110.       Copy c/Run Ram:c
  111.       Copy c/RunBack Ram:c
  112.       Copy c/Type Ram:c
  113.  
  114.       Copy df0:devs Ram:devs all         :copies devs dir to Ram:devs
  115.       Copy df0:libs Ram:libs all         ;copies libs dir to Ram:libs
  116.       Copy df0:s Ram:s all               ;copies s dir to Ram:s
  117.  
  118.       Copy Utilities/DU-VI Ram:  ;Copy your DU and any other special
  119.                                   tools you might need.  Copy the .info
  120.                                   files too, if you want the icons
  121.  
  122.       Assign c: Ram:c
  123.       Assign devs: Ram:devs
  124.       Assign libs: Ram:libs
  125.       Assign s: Ram:s
  126.  
  127.  
  128.   The other RamBench directories, like the fonts, will still be in the paths,
  129. remember, but only available when the RamBench disk is in a drive.  If you
  130. moved Notepad to Ram, for instance, when you fired it up it would seek the
  131. fonts dir, and you'd get a requester if RamBench wasn't in one of the drives.
  132.  
  133.   If you put the above at the beginning of the st-seq there'll be commands
  134. like LoadWb and SetClock that will be "unknown commands", as by that time
  135. you've already assigned c to Ram:c and the commands aren't there.  Just draw
  136. out the whole pathname, like "df0:c/LoadWb", and everybody'll be happy. 
  137.  
  138.   I included the EndCLI and Execute commands, as well as the "e" and "f"
  139. commands, as I only use the "e" and "f" at the console; I always spell them
  140. out in a scriptfile.
  141.  
  142.   You'll run into snags here and there when you've got things assigned to
  143. directories on other devices, but hey, that's just part of what keeps it
  144. all so dang interesting.  That's why I moved the devs, s and libs dirs over
  145. to Ram also, to help keep the snags at a minimum.  You don't need all of the
  146. libs and devs, of course, so you could just individually copy over the files
  147. you think you'll need instead of using the "all" option.
  148.  
  149.   This still isn't quite good enough, though.  Having all those juicy
  150. commands and libs and stuff in Ram is nice, but we still need to BE some-
  151. where, i.e. a CLI window.  So we do something like this:
  152.  
  153.  
  154.                CD Ram:
  155.                NewCLI con:000/336/318/064/CD-RAM
  156.                CD df0:
  157.                NewCLI con:321/336/318/064/CD-DF0
  158.  
  159.  
  160.   If you're using non-Interlace mode, use: 000/155/319/045/CD-RAM
  161.                                            322/155/318/045/CD-DF0
  162.  
  163.  
  164.   Re-boot this puppy and see what happens.  Hopefully everything will go
  165. as planned.  You'll see less memory available at the top of the screen as Ram
  166. has now got a bellyfull of goodies   If you type "CD" in the left CLI window
  167. you should get a "Ram:" back, and in the right window the name of the disk
  168. currently in df0.
  169.  
  170.   You'll also put those NewCLI commands on your regular Bench.  You won't
  171. have anything in Ram, but you'll still want the window available.
  172.  
  173.   You'll have a blast with ol' RamBench, but keep it on a separate disk for
  174. now.  We're still writing files to the s and devs dirs, and if they're 
  175. assigned to Ram, then we're writing files to Ram, which means bye-bye when
  176. the computer's turned off.  When you're using the RamBench you have to
  177. remember to draw out the full pathname, "df0:s/xx", so it won't write to Ram.
  178.  
  179.   Now you need a small scriptfile in s in case you need to get the memory
  180. back to run some big graphics thing or whatever.
  181.  
  182.   Type "Ed s/dr" (for Delete Ram).  In the Ed box type
  183.  
  184.                            Assign libs: df0:libs
  185.                            Assign devs: df0:devs
  186.                            Assign s: df0:s
  187.                            Assign c: df0:c
  188.                            Delete Ram:#? all quiet
  189.                            Echo "That's it, Boss!"
  190.  
  191. That last line, of course, MUST be in the scriptfile for it to work.  Save
  192. that guy, and the next time you need the Ram back, type "f dr" and there it
  193. is.  You can also have a scriptfile to reload all that stuff back in, as
  194. well.  Just take that whole block of Copies and Assigns in the st-seq and
  195. WriteBlock that sucker to the s directory.  Call it "lr" for Load Ram.
  196.  
  197.   Next, presuming you have FaccII running, you'll want a scriptfile to give
  198. you back both the Ram and what FaccII's hogging.  Use the same file as above,
  199. add a "Fac -q" and call it as "m", for Mem.
  200.  
  201.   If you ARE into graphics, then at times you may be grasping for every
  202. byte of memory possible, and wondering why they can't have a simple UN-LoadWB
  203. command.  I'll get to memory recovery in a few minutes.
  204.  
  205.   For your regular Bench, your scriptfile "dr" will just read "Delete
  206. Ram:#? all", and your "m" file will have the "fac -q" tagged on.
  207.  
  208.   The basic idea of the Shell program and putting all the commands into what
  209. they call Residence is just another way of putting them into memory for
  210. immediate access, and you'll have fun with both RamBench and mini-versions
  211. of it, just putting some c stuff in Ram, just the DU, whatever.  You can
  212. use another Select in the RamBench Select scriptfile to let you choose just
  213. what stuff you want dumped into Ram.
  214.  
  215.   And by the way, if you've done all the above, then congratulations: you
  216. are now "CD Ram", another evolutionary step along the way.
  217.                     
  218.   AND you saved the price of a new disk drive!
  219.  
  220.                                        *
  221.  
  222.   The next step after that would be to dig up the "Rad:" device from a BBS or
  223. Fish disk, and use that, instead.  It's a "recoverable Ram", so (in theory)
  224. your files will still be there in memory after you reboot, saving you the
  225. re-load time.
  226.  
  227.                                        *
  228.  
  229.   Okay, reboot your regular Workbench.  Copy any pertinent files over from
  230. RamBench's s dir, and edit the st-seq to add the NewCLI commands.
  231.  
  232.   Amiga 2000 owners, you may gleefully skip the entire next section.  Hey,
  233. you paid the big bucks, this is your due.
  234.  
  235.                                        *
  236.  
  237.   The absolute most memory you can get is to rename or delete the st-seq
  238. and reboot.  At that point you're seeing what the computer sees as it tries
  239. to find "startup-sequence" in the s dir.  If you want to run your st-seq
  240. step-by-step, this is the way to do it.  Just type in each line of the
  241. st-seq one by one.  If there's a snag you haven't been able to unravel,
  242. you'll find it now.
  243.  
  244.   To find out how much memory you're using, and have free, type Avail.  You
  245. can go through your st-seq step-by-step and Avail after every entry and
  246. actually chart how much memory each command is using, if any.  It's also fun
  247. to Runback PerfMon (off Extras) and SysMon (off FaccII) at the very beginning
  248. of the st-seq just to watch the programs gobble up the memory.
  249.  
  250.   You don't need to rename or delete the st-seq to be here in this bare-
  251. bones environment; you can make this one of your Select files, this one
  252. reading "CLI" and that's all.  You'll be in a "proper" DOS window with a
  253. little more memory being used than the first way.
  254.  
  255.   Your file "mm" (for MaxMem) would read something like this:
  256.  
  257.       Echo "Please remove disk from df1"      ;gets back a bunch more bytes
  258.       Echo "Please close all windows"         ;lotsa graphic bytes in windows
  259.  
  260.       Delete Ram:#? all quiet   ;cleans out Ram
  261.       Fac -q                    ;turns off FaccII
  262.  
  263.       FastFonts -n              ;quits FastFonts
  264.       InstallBeep -quit         ;turns off PlayBeep
  265.       Mackie -q                 ;turns off Mackie
  266.  
  267.       Lace                      ;non-Interlace uses a bunch less graphics mem
  268.       SetPrefs Nolace           ;non-Interlace colors
  269.       Wait 2                    ;to let Lace do its thing and let everybody
  270.                                  else catch their collective breath
  271.  
  272.       Sweep or Flush            ;cleans unused libs, etc, out of memory
  273.  
  274.       Echo "That's all she's got, Boss!"
  275.  
  276.  
  277.   A few mentions on the above:
  278.  
  279.   We have in our s directory that "m" file for the deleting Ram and quitting
  280. FaccII, so we could "Execute s/m" in place of those two lines. (or even
  281. "f s/m", but it's better to write it out..not only for the computer's sake
  282. but for glancing back over it in the future)  It also saves a bit of time
  283. as it doesn't have to read the Execute command or the scriptfile.
  284.  
  285.   The -n option for the FastFonts command just removes the fast text, not
  286. the new fonts, but 99 percent of the memory comes back.  Use the command
  287. "FastFonts -quit" to get back the default fonts...AND 72 more bytes!
  288.  
  289.   I make light of the "72 more bytes", but as I mentioned earlier, memory
  290. recovery is real serious business; there's no "close enough" when it comes
  291. to what a program needs to run.  If it needs 287,539 bytes of FastMem and
  292. you've only got 287,527, well, that's just tough.  And a program with, like,
  293. audio tracks may actually run, but there won't be enough for the audio, so
  294. you won't hear anything...and may not ever know it was there in the first
  295. place!
  296.  
  297.   As far as removing df1's disk, a program might actually need the extra
  298. bytes you get back, but once the program's loaded you can usually re-insert
  299. the disk.  DPaint in 16-color hi-res serves as an example.
  300.  
  301.   The drive just sitting there diskless also uses up memory, which is one of
  302. the reasons you never quite get near that magic 1,000,000 mark.  One game,
  303. Destroyer, actually needs you to disconnect the drive to play it on a 512
  304. machine.  This is not only rude, but unethical, in the sense that one of the
  305. Big No-No's is not to plug and unplug the big cables any more than you have
  306. to, just because you'll start wearing out the pin sockets.  
  307.  
  308.   You can move an icon out of a window to the Workbench screen and close the
  309. window behind it for a few more bytes.  If it's a scriptfile (Project) you
  310. can activate the icon first and then close the window, but don't do it if
  311. it's a tool..they don't like it.  Move the icon out of the window first,
  312. then close it, for a few more precious graphic bytes.
  313.  
  314.   Libs that are called up also account for some memory loss, sometimes
  315. permanently.  Jot down your memory available, pop up the Calculator and
  316. close it again..surprise, the Calculator has loaded the mathieeedoubbas-
  317. .library into memory and you've just lost two thousand bytes!  This is what
  318. Sweep is for.  You want to see a real demo of Sweep, Say something (calls up
  319. translator.lib and narrator.dev), see what you lose, then gain back with
  320. Sweep.  Some memory, alas, is gone forever once used, like the first time
  321. you open a window after booting up.  Close the window and notice you didn't
  322. get it all back, like you will when you open and close future windows.
  323. That's the icon.library being permanently stored in memory.  All kinds of
  324. things get stored, like the printer.device when you use the printer and the
  325. serial.device when you fire up a terminal program.
  326.  
  327.   I point this out for a few different reasons.  You might have some large
  328. graphics tool that was running fine before and now won't, possibly because
  329. you tapped into a lib or dev doing something else and permanently lost some
  330. memory.  And sometimes a program will mess up the lib or device access for
  331. another program.  Programs with audio in them seem particularly sensitive to
  332. this.
  333.  
  334.   Well, that's it for memory recovery.  There are other odd tips and tricks,
  335. like a program uses a little less memory if you type just the name rather
  336. than Run it, and a "Path reset" gets a few bytes back, but hunting down that
  337. elusive byte is just part of the fun.  Who knows?  You might make some
  338. unique discovery just farting around that'll make BBS history.  Tune in
  339. next week for...The Search For UnLoadWb!
  340.  
  341.   By the way, you think YOU got memory problems..pity us poor hard drive
  342. owners.  Not only do BindDrivers and Mount suck up their fair share, but the
  343. ton of Assigns and Paths don't help either.  And then on top of that, we're
  344. trying to run these huge games out of them that were designed to be run
  345. straight off the disk without ANY LoadWb business or non-turnoffable sub-
  346. routines or anything, so let's have a little sympathy where it counts...
  347.  
  348.   Hey, thanks.  We appreciate your gesture.
  349.  
  350.                                        *
  351.  
  352.   I haven't mentioned printers, by the way, because there's really not a
  353. heck of a lot to say about them.  They either work or they don't. :)  
  354.  
  355.   If you want to copy every filename on the Workbench to the printer, type
  356. "Dir >prt: all".  If you want all of df1's filenames copied to the printer
  357. type "dir >prt: df1: all".  Sometimes "par:", which directs the output
  358. straight to the parallel port, works better than "prt:", which uses the 
  359. Prefs printer settings. 
  360.  
  361.                                        *
  362.  
  363.   Well, how 'bout an example of a "sub-scriptfile", or whatever you want to
  364. call it?  I'm sure the books have a name for it but nothing springs to mind.
  365. I call it a "sidebar" file which, at least journalistically, makes sense.
  366.  
  367.   I've got a downloaded game called Blackjack.  It takes about a half a
  368. minute to get all loaded and set up (AmigaBasic), then when it does, the
  369. colors are...just hideous!  By rare good fortune the program allows SetPrefs
  370. to do its thing, so I do this in the Blackjack scriptfile:
  371.  
  372.     CD dh0:Games/Misc                       ;CD to dir game is in
  373.     RunBack -1 df0:c/Execute Blackjack.scp  ;Execute sidebar scriptfile
  374.     AmigaBasic Blackjack-                   ;run program, no Run
  375.     SetPrefs Inlace                         ;back to Interlace colors/pointer
  376.                                                when program is through
  377.  
  378.  
  379.   To note is using the RunBack for the execution of the sidebar.  If we'd
  380. just Executed it, it would have frozen the scriptfile until the sidebar file
  381. was finished, not the idea. 
  382.  
  383. The sidebar "Blackjack.scp" is two lines:
  384.  
  385.     Wait 38                       ;waits until program is loaded
  386.     SetPrefs Blackjack.pref       ;sets colors and pointer to special
  387.                                      Blackjack scheme
  388.  
  389.   So the sidebar scriptfile is humming along in the background, waiting 38
  390. seconds, while the Blackjack program is being loaded.  Then the Wait command
  391. is through and it resets the colors to the colors of my choice.
  392.  
  393.   You'll find various needs for them here and there.  Scriptfiles and sub-
  394. scriptfiles are really what make the computer do what you want.
  395.  
  396.                                        *
  397.  
  398.   As a small sidenote, it might be mentioned that you'll hear Basic being
  399. put down in all quarters, but if Blackjack had been written in code or
  400. something, it wouldn't have allowed us to alter the color scheme to our
  401. liking.  Just thought it ought to be mentioned.  Ever own a '63 Bug?
  402.  
  403.                                        *
  404.  
  405.   Let me give you two examples of the FailAt command.  It can really do
  406. wonders.
  407.  
  408.   1. If you have "Delete FileX" in a scriptfile, and the file isn't there,
  409. the failed Delete command will stop the scriptfile, with a "return code of
  410. 20".  If you put a "FailAt 25" BEFORE the Delete command, the scriptfile will
  411. continue.  The FailAt command only works on the command following it.  In the
  412. stock st-seq, there's a FailAt before the SetClock command, in case you
  413. didn't have the FastMem pack (with system clock) and if failed.
  414.  
  415.   You WANT, by the way, such commands as Delete to fail when they can't
  416. perform correctly.  It allows you to make a choice at that point and do one
  417. thing or another, in conjunction with the "If warn" parameter.  The 2.x/3.x
  418. commands DON'T fail now, for some odd reason, which really messed that
  419. "choice" business up.
  420.  
  421.   2. Let's say you're running OS 1.3, but you have a 2.x kickfile you want to
  422. use at times.  Near the beginning of your st-seq, you'd have:
  423.  
  424. FailAt 25
  425. Version                     ;the 2.x Version command, not the 1.3
  426. If warn                     ;the 2.x Version fails, issuing a "warn".  This
  427. <1.3>                       ;tests for the "warn".  
  428. <commands>
  429. <go>
  430. <here>
  431. Else
  432. <2.x>
  433. <commands>
  434. <go>
  435. <here>
  436. EndIf
  437.  
  438.   Catch that?  If you're in 1.3, the 2.x Version command fails, issuing an
  439. error code (the "warn"), which the If asks about.  In this case, there's a
  440. "warn", so the 1.3 commands get run.  If you were under 2.x, the Version
  441. command wouldn't have failed and the If would have skipped down to the
  442. "Else", and run the 2.x commands.  You can also use the SetPatch command
  443. instead of the Version command.  
  444.  
  445.                                       *
  446.  
  447.   I told you before that if you were very very good I'd tell you where the
  448. Secret Passageway in Dark Castle was...and this shall be the FIRST time The
  449. BenchMaster has let one of the Great Secrets be told...but told it shall be,
  450. as reward for your having accomplished so much of this fine tutorial.  And
  451. you only fell asleep in class three times!
  452.  
  453.   Boot up the game, Beginner level.  Enter door #3.  Scoot up the ropes to
  454. that top-left platform.  See the EDGE of the ledge up to your right?  Ah ha!
  455. Jump up to it and you end up on the rope, probably being bitten by a rat.
  456. The trick is to get as close, and I mean AS CLOSE, to the wall as possible,
  457. turn around, and THEN jump up to the ledge.  Wow!  You might, of course, want
  458. a little Shield or Fireball here as I believe we're expecting a visit from
  459. an old friend about now...
  460.  
  461.   The reason we're in Beginner mode is because, as you MAY know, when you
  462. get to the higher levels you bonk your head when you walk into a wall.
  463. You can do it in all three levels, it's just much easier at Beginner.  It's
  464. a very light finger action, obviously, that's needed, but you'll get it.
  465. I've found that if I jump up on the rope, climb to the top then jump back
  466. off, the spot that it leaves me in gives me the best chance to scoot right
  467. up to the wall and stop.  There are two okay spots; with his face dead flush
  468. against the wall and one pixel over to the right.  A game glitch?  Hey, who
  469. knows, right?  I've found lots of "strange" things in the better games and
  470. don't have any idea if they're glitches or not.  Go back and forth between
  471. Shield 3 and 4 and it keeps giving you points/lives.  BUT only if you kill
  472. all the bats in #4 first! (you only have to do it once).  It doesn't do
  473. that between any other screens, far as I know.  Getting back to the Secret
  474. Passageway, the questions are these:  Why WOULDN'T an old castle have a
  475. secret passageway?  And...would it have more than ONE??  <wink>
  476.  
  477.   Update Note:  Well, I already discovered the Secret Window in Beyond
  478. Dark Castle!  West Tower Wall, cliff on the left, toes overhanging edge,
  479. about a third of his foot.  NO range for error, only works in one spot, very
  480. hard to do.  Also works in the Practice mode; screen kind of goes BLINK! and
  481. starts over.  
  482.  
  483.   Have fun with the games!  Explore everything!
  484.  
  485.                                        *
  486.  
  487.   
  488.